﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class ToiminguOsalineOtsing : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.OsalineOtsing, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiminguOsalineOtsing {
        
        private string @__menetluseNR;
        
        private System.Int64? @__menetluseObjektID;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing> @__menetluseMenetlevadAsutused = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing>();
        
        private System.Int64? @__toiminguObjektID;
        
        private string @__toiminguNR;
        
        private System.Int64? @__toiminguLiikKL;
        
        private System.DateTime? @__toiminguAlgusKP;
        
        private System.DateTime? @__toiminguAlgusKPVahemikuLoppKP;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiminguOsalineOtsing> @__toiminguMenetlejad = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiminguOsalineOtsing>();
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing> @__toimingutMenetlevAsutus = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing>();
        
        private System.Int64? @__toiminguosaliseLiikKL;
        
        private System.DateTime? @__allkirjastamiseKP;
        
        private System.DateTime? @__kattesaamiseKP;
        
        private string @__kattesaajaCSV;
        
        private System.Int64? @__ametKL;
        
        public ToiminguOsalineOtsing() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public ToiminguOsalineOtsing(
                    string @menetluseNR, 
                    System.Int64? @menetluseObjektID, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing> @menetluseMenetlevadAsutused, 
                    System.Int64? @toiminguObjektID, 
                    string @toiminguNR, 
                    System.Int64? @toiminguLiikKL, 
                    System.DateTime? @toiminguAlgusKP, 
                    System.DateTime? @toiminguAlgusKPVahemikuLoppKP, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiminguOsalineOtsing> @toiminguMenetlejad, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing> @toimingutMenetlevAsutus, 
                    System.Int64? @toiminguosaliseLiikKL, 
                    System.DateTime? @allkirjastamiseKP, 
                    System.DateTime? @kattesaamiseKP, 
                    string @kattesaajaCSV, 
                    System.Int64? @ametKL, 
                    System.Boolean? @eXCLUDE, 
                    System.DateTime? @algusKP, 
                    System.DateTime? @algusKPVahemikuLoppKP, 
                    System.Collections.Generic.List<System.Int64?> @liikKL, 
                    System.Int64? @isikuObjektID, 
                    string @isikuKood, 
                    string @isikuNimi, 
                    string @isikuEesnimi, 
                    string @isikuKoosnimi, 
                    System.DateTime? @isikuSynniKP, 
                    System.DateTime? @isikuSynniKPVahemikuLoppKP, 
                    System.DateTime? @koostamiseKP, 
                    System.DateTime? @koostamiseKPVahemikuLoppKP, 
                    string @kvalifikatsioonCSV, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKvalifikatsiooniParagrahvOtsing> @kvalifikatsioon, 
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKvalifikatsiooniParagrahvOtsing @kvalifikatsiooniVahemikuLopp, 
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing @organisatsiooniyksus, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> @osaliseEsindaja, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> @osaliseEsindatav, 
                    System.Boolean? @loppKPIsNull, 
                    System.DateTime? @loppKP, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IByrooPiirang> @byrooPiirangud, 
                    System.Collections.Generic.List<System.Int64?> @isikuTyypKL) : 
                base(@eXCLUDE, @algusKP, @algusKPVahemikuLoppKP, @liikKL, @isikuObjektID, @isikuKood, @isikuNimi, @isikuEesnimi, @isikuKoosnimi, @isikuSynniKP, @isikuSynniKPVahemikuLoppKP, @koostamiseKP, @koostamiseKPVahemikuLoppKP, @kvalifikatsioonCSV, @kvalifikatsioon, @kvalifikatsiooniVahemikuLopp, @organisatsiooniyksus, @osaliseEsindaja, @osaliseEsindatav, @loppKPIsNull, @loppKP, @byrooPiirangud, @isikuTyypKL) {
            this.@__menetluseNR = @menetluseNR;
            this.@__menetluseObjektID = @menetluseObjektID;
            this.@__menetluseMenetlevadAsutused = @menetluseMenetlevadAsutused;
            this.@__toiminguObjektID = @toiminguObjektID;
            this.@__toiminguNR = @toiminguNR;
            this.@__toiminguLiikKL = @toiminguLiikKL;
            this.@__toiminguAlgusKP = @toiminguAlgusKP;
            this.@__toiminguAlgusKPVahemikuLoppKP = @toiminguAlgusKPVahemikuLoppKP;
            this.@__toiminguMenetlejad = @toiminguMenetlejad;
            this.@__toimingutMenetlevAsutus = @toimingutMenetlevAsutus;
            this.@__toiminguosaliseLiikKL = @toiminguosaliseLiikKL;
            this.@__allkirjastamiseKP = @allkirjastamiseKP;
            this.@__kattesaamiseKP = @kattesaamiseKP;
            this.@__kattesaajaCSV = @kattesaajaCSV;
            this.@__ametKL = @ametKL;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected ToiminguOsalineOtsing(IToiminguOsalineOtsing @toiminguOsalineOtsing) : 
                base(@toiminguOsalineOtsing.EXCLUDE, @toiminguOsalineOtsing.AlgusKP, @toiminguOsalineOtsing.AlgusKPVahemikuLoppKP, @toiminguOsalineOtsing.LiikKL, @toiminguOsalineOtsing.IsikuObjektID, @toiminguOsalineOtsing.IsikuKood, @toiminguOsalineOtsing.IsikuNimi, @toiminguOsalineOtsing.IsikuEesnimi, @toiminguOsalineOtsing.IsikuKoosnimi, @toiminguOsalineOtsing.IsikuSynniKP, @toiminguOsalineOtsing.IsikuSynniKPVahemikuLoppKP, @toiminguOsalineOtsing.KoostamiseKP, @toiminguOsalineOtsing.KoostamiseKPVahemikuLoppKP, @toiminguOsalineOtsing.KvalifikatsioonCSV, @toiminguOsalineOtsing.Kvalifikatsioon, @toiminguOsalineOtsing.KvalifikatsiooniVahemikuLopp, @toiminguOsalineOtsing.Organisatsiooniyksus, @toiminguOsalineOtsing.OsaliseEsindaja, @toiminguOsalineOtsing.OsaliseEsindatav, @toiminguOsalineOtsing.LoppKPIsNull, @toiminguOsalineOtsing.LoppKP, @toiminguOsalineOtsing.ByrooPiirangud, @toiminguOsalineOtsing.IsikuTyypKL) {
            this.@__menetluseNR = @toiminguOsalineOtsing.MenetluseNR;
            this.@__menetluseObjektID = @toiminguOsalineOtsing.MenetluseObjektID;
            this.@__menetluseMenetlevadAsutused = @toiminguOsalineOtsing.MenetluseMenetlevadAsutused;
            this.@__toiminguObjektID = @toiminguOsalineOtsing.ToiminguObjektID;
            this.@__toiminguNR = @toiminguOsalineOtsing.ToiminguNR;
            this.@__toiminguLiikKL = @toiminguOsalineOtsing.ToiminguLiikKL;
            this.@__toiminguAlgusKP = @toiminguOsalineOtsing.ToiminguAlgusKP;
            this.@__toiminguAlgusKPVahemikuLoppKP = @toiminguOsalineOtsing.ToiminguAlgusKPVahemikuLoppKP;
            this.@__toiminguMenetlejad = @toiminguOsalineOtsing.ToiminguMenetlejad;
            this.@__toimingutMenetlevAsutus = @toiminguOsalineOtsing.ToimingutMenetlevAsutus;
            this.@__toiminguosaliseLiikKL = @toiminguOsalineOtsing.ToiminguosaliseLiikKL;
            this.@__allkirjastamiseKP = @toiminguOsalineOtsing.AllkirjastamiseKP;
            this.@__kattesaamiseKP = @toiminguOsalineOtsing.KattesaamiseKP;
            this.@__kattesaajaCSV = @toiminguOsalineOtsing.KattesaajaCSV;
            this.@__ametKL = @toiminguOsalineOtsing.AmetKL;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public ToiminguOsalineOtsing(IOsalineOtsing @osalineOtsing) : 
                base(@osalineOtsing) {
        }
        
        public virtual string MenetluseNR {
            get {
                return this.@__menetluseNR;
            }
            set {
                this.@__menetluseNR = value;
            }
        }
        
        public virtual System.Int64? MenetluseObjektID {
            get {
                return this.@__menetluseObjektID;
            }
            set {
                this.@__menetluseObjektID = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing> MenetluseMenetlevadAsutused {
            get {
                return this.@__menetluseMenetlevadAsutused;
            }
            set {
                this.@__menetluseMenetlevadAsutused = value;
            }
        }
        
        public virtual System.Int64? ToiminguObjektID {
            get {
                return this.@__toiminguObjektID;
            }
            set {
                this.@__toiminguObjektID = value;
            }
        }
        
        public virtual string ToiminguNR {
            get {
                return this.@__toiminguNR;
            }
            set {
                this.@__toiminguNR = value;
            }
        }
        
        public virtual System.Int64? ToiminguLiikKL {
            get {
                return this.@__toiminguLiikKL;
            }
            set {
                this.@__toiminguLiikKL = value;
            }
        }
        
        public virtual System.DateTime? ToiminguAlgusKP {
            get {
                return this.@__toiminguAlgusKP;
            }
            set {
                this.@__toiminguAlgusKP = value;
            }
        }
        
        public virtual System.DateTime? ToiminguAlgusKPVahemikuLoppKP {
            get {
                return this.@__toiminguAlgusKPVahemikuLoppKP;
            }
            set {
                this.@__toiminguAlgusKPVahemikuLoppKP = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiminguOsalineOtsing> ToiminguMenetlejad {
            get {
                return this.@__toiminguMenetlejad;
            }
            set {
                this.@__toiminguMenetlejad = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IJuriidilineIsikOtsing> ToimingutMenetlevAsutus {
            get {
                return this.@__toimingutMenetlevAsutus;
            }
            set {
                this.@__toimingutMenetlevAsutus = value;
            }
        }
        
        public virtual System.Int64? ToiminguosaliseLiikKL {
            get {
                return this.@__toiminguosaliseLiikKL;
            }
            set {
                this.@__toiminguosaliseLiikKL = value;
            }
        }
        
        public virtual System.DateTime? AllkirjastamiseKP {
            get {
                return this.@__allkirjastamiseKP;
            }
            set {
                this.@__allkirjastamiseKP = value;
            }
        }
        
        public virtual System.DateTime? KattesaamiseKP {
            get {
                return this.@__kattesaamiseKP;
            }
            set {
                this.@__kattesaamiseKP = value;
            }
        }
        
        public virtual string KattesaajaCSV {
            get {
                return this.@__kattesaajaCSV;
            }
            set {
                this.@__kattesaajaCSV = value;
            }
        }
        
        public virtual System.Int64? AmetKL {
            get {
                return this.@__ametKL;
            }
            set {
                this.@__ametKL = value;
            }
        }
    }
}
